iT邦幫忙

2023 iThome 鐵人賽

DAY 27
0

在網頁中,會需要配置很多的控制項,使得頁面更加豐富,所以將要介紹一個超好用的容器控制項,那就是 Panel 控制項。

Panel 控制項

  • 可以將任何的控制項放置其中,藉此達到群組化。
<asp:Panel ID="Panel1" runat="server">
    <h1>會員註冊</h1>
    <p>帳號:<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox></p>
    <p>密碼:<asp:TextBox ID="TextBox2" runat="server"></asp:TextBox></p>
    <p>Email:<asp:TextBox ID="TextBox3" runat="server"></asp:TextBox></p>
    <p>電話:<asp:TextBox ID="TextBox4" runat="server"></asp:TextBox></p>
    <asp:Button ID="Button1" runat="server" Text="完成" OnClick="Button1_Click" />
</asp:Panel>
<asp:Panel ID="Panel2" runat="server" Visible="false">
    <p>註冊成功!</p>
</asp:Panel>

https://ithelp.ithome.com.tw/upload/images/20231007/20162273WIT39787lI.jpg

protected void Button1_Click(object sender, EventArgs e)
{
    Panel1.Visible = false;
    Panel2.Visible = true;
}

https://ithelp.ithome.com.tw/upload/images/20231007/20162273tFGhD3InCG.jpg

執行の結果


https://ithelp.ithome.com.tw/upload/images/20231007/20162273XeQt3h2lFO.jpg

https://ithelp.ithome.com.tw/upload/images/20231007/20162273TEkOtYjCeb.jpg

再介紹一個與 Panel 控制項十分相似的,就是 PlaceHolder 控制項。

PlaceHolder 控制項

  • 存放區以動態方式將伺服器控制項加入網頁中。
  • 是由程式動態產生,而不需要在設計時就將它們固定在頁面上。
<p>靜態文字</p>
<p>
    <asp:Button ID="Button1" runat="server" Text="新增" OnClick="Button1_Click" />
    <asp:PlaceHolder ID="PlaceHolder1" runat="server"></asp:PlaceHolder>
</p>

https://ithelp.ithome.com.tw/upload/images/20231007/20162273CaGkzG4aQl.jpg

protected void Button1_Click(object sender, EventArgs e)
{
    Label label = new Label();
    label.Text = "動態所產生的文字";
    PlaceHolder1.Controls.Add(label);
}

https://ithelp.ithome.com.tw/upload/images/20231007/20162273hZTg160T2a.jpg

執行の結果


  1. 這是一開始 run 出來的畫面。

https://ithelp.ithome.com.tw/upload/images/20231007/20162273Cdo8XshiyR.jpg

  1. 點選新增,就會出現在預先配置好的位置。

https://ithelp.ithome.com.tw/upload/images/20231007/201622732p40f3rJGN.jpg

※以上資料如有錯誤請多指教

參考資料

書名:ASP.NET 4.6動態網頁程式設計技術實作:使用C#
PlaceHolder 類別


上一篇
Day26 - 清單控制項
下一篇
Day28 - Table控制項
系列文
連續30天學習C#和ASP.NET30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言